package com.mes.biz.service;

import com.github.pagehelper.PageInfo;
import com.mes.biz.domain.BizCustomerPayableDetail;
import com.mes.biz.domain.vo.ExportStatementDetail;
import com.mes.common.core.service.BaseService;

import java.util.List;
import java.util.Map;

/**
 * 应付账款明细Service接口
 * @author hwg
 * @email hwg
 * @date 2023-04-30
 */
public interface BizCustomerPayableDetailService extends BaseService<BizCustomerPayableDetail> {

    /**
     * 根据客户ID查应收账款明细
     * @param customerId
     * @return
     */
    List<BizCustomerPayableDetail> getBizCustomerPayableDetailByCustomerId(String customerId);

    PageInfo<BizCustomerPayableDetail> getByCustomerId(BizCustomerPayableDetail bizCustomerPayableDetail);

    /**
     * 根据对账单编号查应收账款明细
     * @param accountCode
     * @return
     */
    List<BizCustomerPayableDetail> getBizCustomerPayableDetailByAccountCode(String accountCode, String type);


    public boolean deleteByOderProductId(String orderProductId, String orderNumber);

    public boolean updateAccountCode(String[] ids);

    BizCustomerPayableDetail getInfoByOrderProductId(String orderProductId, String orderNumber);

    boolean checkAccountCodeByOrderNumber(String orderNumber);

    List<ExportStatementDetail> exportStatement(String[] ids);

    BizCustomerPayableDetail getByAfterSaleOrderId(String afterSaleOrderId);

    /**
     * 查询今日收款数据
     * @return
     */
    Map<String, Object> getIncomeDataByToday();
}
